home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 014 / push_pop.arc < prev    next >
PAK/ARC Compressed Archive  |  1985-06-29  |  1.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

view JSON data     |     view as text

This file was processed as: PAK/ARC Compressed Archive (archive/arc).

You can browse this item here: push_pop.arc

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert PAK/ARC Compressed Archive (archive/arc) magic Supported
66% dexvert ArcFS Archive (archive/arcFS) ext Supported
1% dexvert FreeArc Archive (archive/freeArc) ext Unsupported
100% file ARC archive data, packed default
99% file data default
100% TrID PAK/ARC Compressed archive default
100% lsar ARC default
100% xdgMime application/x-arc default



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 1a 03 50 4f 50 2e 50 41 | 53 00 2f 78 d3 7d d3 44 |..POP.PA|S./x.}.D|
|00000010| 03 00 00 dd 0a b7 44 b7 | 68 46 03 00 00 7b 20 50 |......D.|hF...{ P|
|00000020| 4f 50 2e 50 41 53 0d 0a | 20 20 42 79 20 42 65 6c |OP.PAS..| By Bel|
|00000030| 61 20 4c 75 62 6b 69 6e | 20 37 31 30 31 36 2c 31 |a Lubkin| 71016,1|
|00000040| 35 37 33 0d 0a 20 20 43 | 6f 6d 70 69 6c 65 20 74 |573.. C|ompile t|
|00000050| 68 69 73 20 74 6f 20 61 | 20 2e 43 4f 4d 20 66 69 |his to a| .COM fi|
|00000060| 6c 65 20 61 6e 64 20 70 | 75 74 20 50 4f 50 2e 43 |le and p|ut POP.C|
|00000070| 4f 4d 20 73 6f 6d 65 77 | 68 65 72 65 20 6f 6e 20 |OM somew|here on |
|00000080| 79 6f 75 72 20 50 41 54 | 48 2e 20 20 54 68 65 6e |your PAT|H. Then|
|00000090| 0d 0a 20 20 50 4f 50 20 | 77 69 6c 6c 20 72 65 74 |.. POP |will ret|
|000000a0| 75 72 6e 20 79 6f 75 20 | 74 6f 20 61 20 64 69 72 |urn you |to a dir|
|000000b0| 65 63 74 6f 72 79 20 70 | 61 74 68 20 73 61 76 65 |ectory p|ath save|
|000000c0| 64 20 77 69 74 68 20 74 | 68 65 20 50 55 53 48 20 |d with t|he PUSH |
|000000d0| 63 6f 6d 6d 61 6e 64 2e | 0d 0a 20 20 52 65 71 75 |command.|.. Requ|
|000000e0| 69 72 65 73 20 54 75 72 | 62 6f 20 33 2e 30 20 6f |ires Tur|bo 3.0 o|
|000000f0| 72 20 67 72 65 61 74 65 | 72 2c 20 44 4f 53 20 32 |r greate|r, DOS 2|
|00000100| 2e 30 20 6f 72 20 67 72 | 65 61 74 65 72 2e 0d 0a |.0 or gr|eater...|
|00000110| 7d 0d 0a 0d 0a 43 6f 6e | 73 74 0d 0a 20 20 53 74 |}....Con|st.. St|
|00000120| 61 63 6b 46 69 6c 65 4e | 61 6d 65 3d 27 43 3a 5c |ackFileN|ame='C:\|
|00000130| 43 44 53 54 41 43 4b 2e | 44 41 54 27 3b 20 20 7b |CDSTACK.|DAT'; {|
|00000140| 20 43 68 61 6e 67 65 20 | 74 6f 20 77 68 61 74 65 | Change |to whate|
|00000150| 76 65 72 20 73 65 65 6d | 73 20 61 70 70 72 6f 70 |ver seem|s approp|
|00000160| 72 69 61 74 65 20 7d 0d | 0a 0d 0a 54 79 70 65 0d |riate }.|...Type.|
|00000170| 0a 20 20 53 74 61 63 6b | 45 6c 65 6d 65 6e 74 3d |. Stack|Element=|
|00000180| 53 74 72 69 6e 67 5b 36 | 36 5d 3b 0d 0a 0d 0a 56 |String[6|6];....V|
|00000190| 61 72 0d 0a 20 20 53 3a | 20 53 74 61 63 6b 45 6c |ar.. S:| StackEl|
|000001a0| 65 6d 65 6e 74 3b 0d 0a | 20 20 53 74 61 63 6b 46 |ement;..| StackF|
|000001b0| 69 6c 65 3a 20 46 69 6c | 65 20 4f 66 20 53 74 61 |ile: Fil|e Of Sta|
|000001c0| 63 6b 45 6c 65 6d 65 6e | 74 3b 0d 0a 20 20 49 3a |ckElemen|t;.. I:|
|000001d0| 20 49 6e 74 65 67 65 72 | 3b 0d 0a 0d 0a 42 65 67 | Integer|;....Beg|
|000001e0| 69 6e 0d 0a 20 20 41 73 | 73 69 67 6e 28 53 74 61 |in.. As|sign(Sta|
|000001f0| 63 6b 46 69 6c 65 2c 53 | 74 61 63 6b 46 69 6c 65 |ckFile,S|tackFile|
|00000200| 4e 61 6d 65 29 3b 0d 0a | 20 20 7b 24 49 2d 7d 20 |Name);..| {$I-} |
|00000210| 52 65 73 65 74 28 53 74 | 61 63 6b 46 69 6c 65 29 |Reset(St|ackFile)|
|00000220| 3b 20 7b 24 49 2b 7d 0d | 0a 20 20 49 66 20 49 4f |; {$I+}.|. If IO|
|00000230| 52 65 73 75 6c 74 3c 3e | 30 20 54 68 65 6e 0d 0a |Result<>|0 Then..|
|00000240| 20 90 03 42 65 67 69 6e | 0d 0a 20 90 04 57 72 69 | ..Begin|.. ..Wri|
|00000250| 74 65 4c 6e 28 27 53 74 | 61 63 6b 20 65 6d 70 74 |teLn('St|ack empt|
|00000260| 79 27 29 3b 0d 0a 20 90 | 04 48 61 6c 74 3b 0d 0a |y');.. .|.Halt;..|
|00000270| 20 90 03 45 6e 64 3b 0d | 0a 20 20 53 65 65 6b 28 | ..End;.|. Seek(|
|00000280| 53 74 61 63 6b 46 69 6c | 65 2c 46 69 6c 65 53 69 |StackFil|e,FileSi|
|00000290| 7a 65 28 53 74 61 63 6b | 46 69 6c 65 29 2d 31 29 |ze(Stack|File)-1)|
|000002a0| 3b 0d 0a 20 20 52 65 61 | 64 28 53 74 61 63 6b 46 |;.. Rea|d(StackF|
|000002b0| 69 6c 65 2c 53 29 3b 0d | 0a 20 20 53 65 65 6b 28 |ile,S);.|. Seek(|
|000002c0| 53 74 61 63 6b 46 69 6c | 65 2c 46 69 6c 65 53 69 |StackFil|e,FileSi|
|000002d0| 7a 65 28 53 74 61 63 6b | 46 69 6c 65 29 2d 31 29 |ze(Stack|File)-1)|
|000002e0| 3b 0d 0a 20 20 54 72 75 | 6e 63 61 74 65 28 53 74 |;.. Tru|ncate(St|
|000002f0| 61 63 6b 46 69 6c 65 29 | 3b 0d 0a 20 20 49 3a 3d |ackFile)|;.. I:=|
|00000300| 46 69 6c 65 53 69 7a 65 | 28 53 74 61 63 6b 46 69 |FileSize|(StackFi|
|00000310| 6c 65 29 3b 0d 0a 20 20 | 43 6c 6f 73 65 28 53 74 |le);.. |Close(St|
|00000320| 61 63 6b 46 69 6c 65 29 | 3b 0d 0a 20 20 49 66 20 |ackFile)|;.. If |
|00000330| 49 3d 30 20 54 68 65 6e | 20 45 72 61 73 65 28 53 |I=0 Then| Erase(S|
|00000340| 74 61 63 6b 46 69 6c 65 | 29 3b 0d 0a 20 20 43 68 |tackFile|);.. Ch|
|00000350| 44 69 72 28 53 29 3b 0d | 0a 45 6e 64 2e 0d 0a 0d |Dir(S);.|.End....|
|00000360| 0a 1a 03 50 55 53 48 2e | 50 41 53 00 78 d3 7d d3 |...PUSH.|PAS.x.}.|
|00000370| 8e 03 00 00 dd 0a 85 44 | 95 f5 9a 03 00 00 7b 20 |.......D|......{ |
|00000380| 50 55 53 48 2e 50 41 53 | 0d 0a 20 20 42 79 20 42 |PUSH.PAS|.. By B|
|00000390| 65 6c 61 20 4c 75 62 6b | 69 6e 20 37 31 30 31 36 |ela Lubk|in 71016|
|000003a0| 2c 31 35 37 33 0d 0a 20 | 20 43 6f 6d 70 69 6c 65 |,1573.. | Compile|
|000003b0| 20 74 68 69 73 20 74 6f | 20 61 20 2e 43 4f 4d 20 | this to| a .COM |
|000003c0| 66 69 6c 65 20 61 6e 64 | 20 70 75 74 20 50 55 53 |file and| put PUS|
|000003d0| 48 2e 43 4f 4d 20 73 6f | 6d 65 77 68 65 72 65 20 |H.COM so|mewhere |
|000003e0| 6f 6e 20 79 6f 75 72 20 | 50 41 54 48 2e 20 20 54 |on your |PATH. T|
|000003f0| 68 65 6e 0d 0a 20 20 50 | 55 53 48 20 77 69 6c 6c |hen.. P|USH will|
|00000400| 20 73 61 76 65 20 74 68 | 65 20 63 75 72 72 65 6e | save th|e curren|
|00000410| 74 20 64 69 72 65 63 74 | 6f 72 79 20 69 6e 20 61 |t direct|ory in a|
|00000420| 20 66 69 6c 65 2c 20 61 | 6e 64 20 79 6f 75 20 63 | file, a|nd you c|
|00000430| 61 6e 20 72 65 74 75 72 | 6e 20 74 6f 20 74 68 61 |an retur|n to tha|
|00000440| 74 0d 0a 20 20 64 69 72 | 65 63 74 6f 72 79 20 77 |t.. dir|ectory w|
|00000450| 69 74 68 20 74 68 65 20 | 50 4f 50 20 63 6f 6d 6d |ith the |POP comm|
|00000460| 61 6e 64 2e 0d 0a 20 20 | 52 65 71 75 69 72 65 73 |and... |Requires|
|00000470| 20 54 75 72 62 6f 20 33 | 2e 30 20 6f 72 20 67 72 | Turbo 3|.0 or gr|
|00000480| 65 61 74 65 72 2c 20 44 | 4f 53 20 32 2e 30 20 6f |eater, D|OS 2.0 o|
|00000490| 72 20 67 72 65 61 74 65 | 72 2e 0d 0a 7d 0d 0a 0d |r greate|r...}...|
|000004a0| 0a 43 6f 6e 73 74 0d 0a | 20 20 53 74 61 63 6b 46 |.Const..| StackF|
|000004b0| 69 6c 65 4e 61 6d 65 3d | 27 43 3a 5c 43 44 53 54 |ileName=|'C:\CDST|
|000004c0| 41 43 4b 2e 44 41 54 27 | 3b 20 20 7b 20 43 68 61 |ACK.DAT'|; { Cha|
|000004d0| 6e 67 65 20 74 6f 20 77 | 68 61 74 65 76 65 72 20 |nge to w|hatever |
|000004e0| 73 65 65 6d 73 20 61 70 | 70 72 6f 70 72 69 61 74 |seems ap|propriat|
|000004f0| 65 20 7d 0d 0a 0d 0a 54 | 79 70 65 0d 0a 20 20 53 |e }....T|ype.. S|
|00000500| 74 61 63 6b 45 6c 65 6d | 65 6e 74 3d 53 74 72 69 |tackElem|ent=Stri|
|00000510| 6e 67 5b 36 36 5d 3b 0d | 0a 0d 0a 56 61 72 0d 0a |ng[66];.|...Var..|
|00000520| 20 20 53 3a 20 53 74 61 | 63 6b 45 6c 65 6d 65 6e | S: Sta|ckElemen|
|00000530| 74 3b 0d 0a 20 20 53 74 | 61 63 6b 46 69 6c 65 3a |t;.. St|ackFile:|
|00000540| 20 46 69 6c 65 20 4f 66 | 20 53 74 61 63 6b 45 6c | File Of| StackEl|
|00000550| 65 6d 65 6e 74 3b 0d 0a | 20 20 49 3a 20 49 6e 74 |ement;..| I: Int|
|00000560| 65 67 65 72 3b 0d 0a 0d | 0a 42 65 67 69 6e 0d 0a |eger;...|.Begin..|
|00000570| 20 20 41 73 73 69 67 6e | 28 53 74 61 63 6b 46 69 | Assign|(StackFi|
|00000580| 6c 65 2c 53 74 61 63 6b | 46 69 6c 65 4e 61 6d 65 |le,Stack|FileName|
|00000590| 29 3b 0d 0a 20 20 7b 24 | 49 2d 7d 20 52 65 73 65 |);.. {$|I-} Rese|
|000005a0| 74 28 53 74 61 63 6b 46 | 69 6c 65 29 3b 20 7b 24 |t(StackF|ile); {$|
|000005b0| 49 2b 7d 0d 0a 20 20 49 | 66 20 49 4f 52 65 73 75 |I+}.. I|f IOResu|
|000005c0| 6c 74 3c 3e 30 20 54 68 | 65 6e 0d 0a 20 90 03 42 |lt<>0 Th|en.. ..B|
|000005d0| 65 67 69 6e 0d 0a 20 90 | 04 7b 24 49 2d 7d 20 52 |egin.. .|.{$I-} R|
|000005e0| 65 77 72 69 74 65 28 53 | 74 61 63 6b 46 69 6c 65 |ewrite(S|tackFile|
|000005f0| 29 3b 20 7b 24 49 2b 7d | 0d 0a 20 90 04 49 66 20 |); {$I+}|.. ..If |
|00000600| 49 4f 52 65 73 75 6c 74 | 3c 3e 30 20 54 68 65 6e |IOResult|<>0 Then|
|00000610| 0d 0a 20 90 05 42 65 67 | 69 6e 0d 0a 20 90 06 57 |.. ..Beg|in.. ..W|
|00000620| 72 69 74 65 4c 6e 28 27 | 46 61 74 61 6c 20 65 72 |riteLn('|Fatal er|
|00000630| 72 6f 72 20 2d 2d 20 63 | 61 6e 6e 6f 74 20 6f 70 |ror -- c|annot op|
|00000640| 65 6e 20 73 74 61 63 6b | 20 66 69 6c 65 27 29 3b |en stack| file');|
|00000650| 0d 0a 20 90 06 48 61 6c | 74 3b 0d 0a 20 90 05 45 |.. ..Hal|t;.. ..E|
|00000660| 6e 64 3b 0d 0a 20 90 03 | 45 6e 64 3b 0d 0a 20 20 |nd;.. ..|End;.. |
|00000670| 53 65 65 6b 28 53 74 61 | 63 6b 46 69 6c 65 2c 46 |Seek(Sta|ckFile,F|
|00000680| 69 6c 65 53 69 7a 65 28 | 53 74 61 63 6b 46 69 6c |ileSize(|StackFil|
|00000690| 65 29 29 3b 0d 0a 20 20 | 47 65 74 44 69 72 28 30 |e));.. |GetDir(0|
|000006a0| 2c 53 29 3b 0d 0a 20 20 | 46 6f 72 20 49 3a 3d 4c |,S);.. |For I:=L|
|000006b0| 65 6e 67 74 68 28 53 29 | 2b 31 20 54 6f 20 53 69 |ength(S)|+1 To Si|
|000006c0| 7a 65 4f 66 28 53 29 2d | 31 20 44 6f 20 53 5b 49 |zeOf(S)-|1 Do S[I|
|000006d0| 5d 3a 3d 23 30 3b 0d 0a | 20 20 57 72 69 74 65 28 |]:=#0;..| Write(|
|000006e0| 53 74 61 63 6b 46 69 6c | 65 2c 53 29 3b 0d 0a 20 |StackFil|e,S);.. |
|000006f0| 20 43 6c 6f 73 65 28 53 | 74 61 63 6b 46 69 6c 65 | Close(S|tackFile|
|00000700| 29 3b 0d 0a 45 6e 64 2e | 0d 0a 0d 0a 1a 00 69 6c |);..End.|......il|
|00000710| 65 29 29 3b 0d 0a 20 20 | 47 65 74 44 69 72 28 30 |e));.. |GetDir(0|
|00000720| 2c 53 29 3b 0d 0a 20 20 | 46 6f 72 20 49 3a 3d 4c |,S);.. |For I:=L|
|00000730| 65 6e 67 74 68 28 53 29 | 2b 31 20 54 6f 20 53 69 |ength(S)|+1 To Si|
|00000740| 7a 65 4f 66 28 53 29 2d | 31 20 44 6f 20 53 5b 49 |zeOf(S)-|1 Do S[I|
|00000750| 5d 3a 3d 23 30 3b 0d 0a | 20 20 57 72 69 74 65 28 |]:=#0;..| Write(|
|00000760| 53 74 61 63 6b 46 69 6c | 65 2c 53 29 3b 0d 0a 20 |StackFil|e,S);.. |
|00000770| 20 43 6c 6f 73 65 28 53 | 74 61 63 6b 46 69 6c 65 | Close(S|tackFile|
+--------+-------------------------+-------------------------+--------+--------+